package pe.com.cotelasa.seguridad.controlador.backingBean;

import java.io.Serializable;
import java.util.List;
import javax.faces.model.SelectItem;
import javax.inject.Named;

import org.primefaces.model.DualListModel;
import org.springframework.context.annotation.Scope;

import pe.com.cotelasa.scp.controlador.comando.IComando;
import pe.com.cotelasa.scp.entidad.Empresa;
import pe.com.cotelasa.seguridad.entidad.Usuario;

@Named("BKUsuario")
@Scope("session")
public class BKUsuario implements Serializable {

    private static final long serialVersionUID = -814064832024922546L;
    private Usuario usuarioBusqueda;
    private Usuario usuarioFormulario;
    private Usuario usuarioSeleccionado;
    private List<Usuario> listaUsuarios;
    private Empresa empresaSeleccionada;
    private SelectItem[] listaRol;
    private DualListModel<Empresa> listaEmpresa;
    private boolean formatearContracena;
    private boolean edicion;
    private IComando comando;

    public BKUsuario() {
        usuarioBusqueda = new Usuario();
    }

    /**
     * @return the usuarioFormulario
     */
    public Usuario getUsuarioFormulario() {
        return usuarioFormulario;
    }

    /**
     * @param usuarioFormulario the usuarioFormulario to set
     */
    public void setUsuarioFormulario(Usuario usuarioFormulario) {
        this.usuarioFormulario = usuarioFormulario;
    }

    /**
     * @return the usuarioSeleccionado
     */
    public Usuario getUsuarioSeleccionado() {
        return usuarioSeleccionado;
    }

    /**
     * @param usuarioSeleccionado the usuarioSeleccionado to set
     */
    public void setUsuarioSeleccionado(Usuario usuarioSeleccionado) {
        this.usuarioSeleccionado = usuarioSeleccionado;
    }

    /**
     * @return the listaUsuarios
     */
    public List<Usuario> getListaUsuarios() {
        return listaUsuarios;
    }

    /**
     * @param listaUsuarios the listaUsuarios to set
     */
    public void setListaUsuarios(List<Usuario> listaUsuarios) {
        this.listaUsuarios = listaUsuarios;
    }

    /**
     * @return the usuarioBusqueda
     */
    public Usuario getUsuarioBusqueda() {
        return usuarioBusqueda;
    }

    /**
     * @param usuarioBusqueda the usuarioBusqueda to set
     */
    public void setUsuarioBusqueda(Usuario usuarioBusqueda) {
        this.usuarioBusqueda = usuarioBusqueda;
    }

    public boolean isFormatearContracena() {
        return formatearContracena;
    }

    public void setFormatearContracena(boolean formatearContracena) {
        this.formatearContracena = formatearContracena;
    }

    /**
     * @return the listaRol
     */
    public SelectItem[] getListaRol() {
        return listaRol;
    }

    /**
     * @param listaRol the listaRol to set
     */
    public void setListaRol(SelectItem[] listaRol) {
        this.listaRol = listaRol;
    }

    public Empresa getEmpresaSeleccionada() {
        return empresaSeleccionada;
    }

    public void setEmpresaSeleccionada(Empresa empresaSeleccionada) {
        this.empresaSeleccionada = empresaSeleccionada;
    }

    public IComando getComando() {
        return comando;
    }

    public void setComando(IComando comando) {
        this.comando = comando;
    }

    public void setListaEmpresa(DualListModel<Empresa> listaEmpresa) {
        this.listaEmpresa = listaEmpresa;
    }

    public DualListModel<Empresa> getListaEmpresa() {
        return listaEmpresa;
    }

    public boolean isEdicion() {
        return edicion;
    }

    public void setEdicion(boolean edicion) {
        this.edicion = edicion;
    }
}
